Embodiments of the invention generally relate to Business Rules Management Systems (BRMS) and, more particularly, to generating test scenarios for a set of executable business rules.
Business rules are logical “if-then” statements that provide the basis for automating the repeatable decisions that control a business. Policies and practices are expressed as natural language-based rules instead of computer code. Business rules support complex decision-making in various contexts such as business processes, custom web applications, and decision services for service-oriented architecture (SOA). BRMS are software systems that enable business rules to be defined, deployed, monitored, and maintained separately from application code. By externalizing business rules and providing tools to manage them, a business rules management system enables professionals to define and maintain rules, reducing the amount of time needed to update production systems, and increasing the organization's ability to respond to changes in the business environment. BRMS platforms usually provide test harness components allowing the user to define and execute test scenarios against the business rules. One example of a BRMS platform is WebSphere Operational Decision Management (WODM) available from IBM Corporation. Business rules are stored in a central repository that can be accessed across the business enterprise. BRMS allow business experts to define, manage and deploy an enterprise's operational business decisions as services, available for use by any enterprise application or business process. Although the BRMS model accelerates the development lifecycle and allows business users to directly participate in managing automated decisions, it does not dispense with the necessity for thoroughly testing the business rules that comprise the decision when creating or bringing change to a business policy.
While tools to support the capture and execution of test scenarios are usually provided by the BRMS platform, tools for automatically creating (or helping to create) pertinent test scenarios are not available. Test scenario creation is an entirely manual activity and a challenge for business users because of the large number of variables in the business object model and the complex logical relationships between the different business entities.
Business users often expect, but do not get any assistance from the BRMS platform to create the content of function test scenarios. Furthermore, the business users have such a deep knowledge of their functional domain that they have a tendency to overlook test scenarios that may seem functionally unreasonable.
At the same time, from a system integrity point of view, the Information Technology (IT) group needs the assurance that each rule in the decision has been tested before the rule can be safely deployed to the production environment.